<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Cache a new variable in the data store</title>
 </head>
 <body class="docs"><div id="layout">
  <div id="layout-content"><div id="function.apcu-add" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">apcu_add</h1>
  <p class="verinfo">(PECL apcu &gt;= 4.0.0)</p><p class="refpurpose"><span class="refname">apcu_add</span> &mdash; <span class="dc-title">
   Cache a new variable in the data store
  </span></p>

 </div>
 <div class="refsect1 description" id="refsect1-function.apcu-add-description">
  <h3 class="title">说明</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>apcu_add</strong></span>
    ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$key</code></span>
   , <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$var</code></span>
   [, <span class="methodparam"><span class="type">int</span> <code class="parameter">$ttl</code><span class="initializer"> = 0</span></span>
  ] ) : <span class="type">bool</span></div>

  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>apcu_add</strong></span>
    ( <span class="methodparam"><span class="type">array</span> <code class="parameter">$values</code></span>
   [, <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$unused</code><span class="initializer"> = NULL</span></span>
   [, <span class="methodparam"><span class="type">int</span> <code class="parameter">$ttl</code><span class="initializer"> = 0</span></span>
  ]] ) : <span class="type">array</span></div>

  <p class="para rdfs-comment">
   Caches a variable in the data store, only if it&#039;s not already stored.
  </p>
  <blockquote class="note"><p><strong class="note">Note</strong>: 
   <span class="simpara">
    Unlike many other mechanisms in PHP, variables stored using
    <span class="function"><strong>apcu_add()</strong></span> will persist between requests (until the
    value is removed from the cache).
   </span>
  </p></blockquote>
 </div>

 <div class="refsect1 parameters" id="refsect1-function.apcu-add-parameters">
  <h3 class="title">参数</h3>
  <p class="para">
   <dl>

    
     <dt>
<code class="parameter">key</code></dt>

     <dd>

      <p class="para">
       Store the variable using this name. <code class="parameter">key</code>s are
       cache-unique, so attempting to use <span class="function"><strong>apcu_add()</strong></span> to
       store data with a key that already exists will not overwrite the
       existing data, and will instead return <strong><code>FALSE</code></strong>. (This is the only
       difference between <span class="function"><strong>apcu_add()</strong></span> and
       <span class="function"><a href="apcu_store.html" class="function">apcu_store()</a></span>.)
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">var</code></dt>

     <dd>

      <p class="para">
       The variable to store
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">ttl</code></dt>

     <dd>

      <p class="para">
       Time To Live; store <code class="parameter">var</code> in the cache for
       <code class="parameter">ttl</code> seconds. After the
       <code class="parameter">ttl</code> has passed, the stored variable will be
       expunged from the cache (on the next request). If no <code class="parameter">ttl</code>
       is supplied (or if the <code class="parameter">ttl</code> is
       <em>0</em>), the value will persist until it is removed from
       the cache manually, or otherwise fails to exist in the cache (clear,
       restart, etc.).
      </p>
     </dd>

    
    
     <dt>
<code class="parameter">values</code></dt>

     <dd>

      <p class="para">
       Names in key, variables in value.
      </p>
     </dd>

    
   </dl>

  </p>
 </div>

 <div class="refsect1 returnvalues" id="refsect1-function.apcu-add-returnvalues">
  <h3 class="title">返回值</h3>
  <p class="para">
   Returns TRUE if something has effectively been added into the cache, FALSE otherwise.
   Second syntax returns array with error keys.
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-function.apcu-add-examples">
  <h3 class="title">范例</h3>
  <p class="para">
   <div class="example" id="example-414">
    <p><strong>Example #1 A <span class="function"><strong>apcu_add()</strong></span> example</strong></p>
    <div class="example-contents">
<div class="phpcode"><pre><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br />$bar&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'BAR'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">apcu_add</span><span style="color: #007700">(</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$bar</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">apcu_fetch</span><span style="color: #007700">(</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">));<br />echo&nbsp;</span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$bar&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'NEVER&nbsp;GETS&nbsp;SET'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">apcu_add</span><span style="color: #007700">(</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$bar</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">apcu_fetch</span><span style="color: #007700">(</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">));<br />echo&nbsp;</span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</pre></div>
    </div>

    <div class="example-contents"><p>以上例程会输出：</p></div>
    <div class="example-contents screen">
<div class="cdata"><pre>
string(3) &quot;BAR&quot;
string(3) &quot;BAR&quot;
</pre></div>
    </div>
   </div>
  </p>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.apcu-add-seealso">
  <h3 class="title">参见</h3>
  <p class="para">
   <ul class="simplelist">
    <li class="member"><span class="function"><a href="apcu_store.html" class="function" rel="rdfs-seeAlso">apcu_store()</a> - Cache a variable in the data store</span></li>
    <li class="member"><span class="function"><a href="apcu_fetch.html" class="function" rel="rdfs-seeAlso">apcu_fetch()</a> - Fetch a stored variable from the cache</span></li>
    <li class="member"><span class="function"><a href="apcu_delete.html" class="function" rel="rdfs-seeAlso">apcu_delete()</a> - Removes a stored variable from the cache</span></li>
   </ul>
  </p>
 </div>


</div></div></div></body></html>